#ifndef BLOCKMATRIX_H
#define BLOCKMATRIX_H

#define IN_RADIUS 1.0
#define OUT_RADIUS 1.5
#define OPENING_ANGLE 15
#define NUM_POINTS 100
#define DEFAULT_POINT Point3d(0,0,0)

#include "block.h";

class BlockMatrix
{
public:
    BlockMatrix(double h_cylinder, int alpha, double h_block){
        h_matrix = (int)(h_cylinder/h_block);
        w_matrix = (int)(360/alpha);
        matrix=new Block[h_matrix*w_matrix];
        for(int i=0; i<(h_matrix*w_matrix); i++){
            matrix[i] = Block();
        }
    }

    void insert(int i, int j);
    void remove(int i, int j);
    Block get(int i, int j);
    void drawMatrix();


private:
    int h_matrix;
    int w_matrix;
    Block* matrix;
};

#endif // BLOCKMATRIX_H
